//643. 子数组最大平均数 I
//思路：滑动窗口解题
//1.将数组k个元素为一组加起来，将累加的值存放到max中
//2.再减掉上一组的第一个元素，加上本组的最后一个元素，这样第二组累加结果就出来了
//3.用fmax函数来更新max的值
//4.最后将返回max/k，强转为double类型

#include <math.h>
double findMaxAverage(int* nums, int numsSize, int k){
    int sum = 0;
    for(int i = 0; i < k; i++)
    {
        sum += nums[i];
    }
    int max = sum;//将第一次累加的结果先存放在max中
    for(int i = k; i < numsSize; i++)
    {
        sum = sum - nums[i-k] + nums[i];
        max = fmax(sum, max);
    }
    return (double)max/k;
}